package cn.cheniy.swiftmark.biz.vo;

import java.util.List;

/**
 * @author cheniy
 * @description
 *  
 */
public class OssVO {


    /**
     * 访问 ID，用于访问对象存储服务的身份标识，类似于用户名，
     * 通常由对象存储服务提供商分配，用于身份验证和权限控制。
     */
    private String accessid;

    /**
     * 策略，是一个 JSON 字符串，定义了客户端上传文件时的一些规则和限制，
     * 例如文件大小限制、上传的目录、有效期等。客户端在上传文件时需要遵循这些规则。
     */
    private String policy;

    /**
     * 签名，是根据 accessid、policy 以及一些加密算法生成的一个字符串，
     * 用于验证请求的合法性和完整性，防止请求被篡改。
     */
    private String signature;

    /**
     * 上传文件的目标目录，指定了文件在对象存储服务中存储的目录路径。
     */
    private String dir;

    /**
     * 对象存储服务的访问域名或主机地址，客户端通过该地址与对象存储服务进行通信。
     */
    private String host;

    /**
     * 上传策略的过期时间，单位通常为秒，表示从当前时间开始，
     * 该上传策略在 expire 秒后将失效，客户端需要重新获取新的策略和签名。
     */
    private Integer expire;

    /**
     * 上传的文件名，即客户端要上传到对象存储服务的文件的名称。
     */
    private String fileName;

    /**
     * 上传文件的操作 URL，客户端通过向该 URL 发送请求来完成文件的上传操作。
     */
    private String actionUrl;

    /**
     * url列表--minio中一条链接对应一个上传的文件
     * @return
     */
    private List<OssVO> ossList;

    public String getAccessid() {
        return accessid;
    }

    public void setAccessid(String accessid) {
        this.accessid = accessid;
    }

    public String getPolicy() {
        return policy;
    }

    public void setPolicy(String policy) {
        this.policy = policy;
    }

    public String getSignature() {
        return signature;
    }

    public void setSignature(String signature) {
        this.signature = signature;
    }

    public String getDir() {
        return dir;
    }

    public void setDir(String dir) {
        this.dir = dir;
    }

    public String getHost() {
        return host;
    }

    public void setHost(String host) {
        this.host = host;
    }

    public Integer getExpire() {
        return expire;
    }

    public void setExpire(Integer expire) {
        this.expire = expire;
    }

    public String getFileName() {
        return fileName;
    }

    public void setFileName(String fileName) {
        this.fileName = fileName;
    }

    public String getActionUrl() {
        return actionUrl;
    }

    public void setActionUrl(String actionUrl) {
        this.actionUrl = actionUrl;
    }

    public List<OssVO> getOssList() {
        return ossList;
    }

    public void setOssList(List<OssVO> ossList) {
        this.ossList = ossList;
    }

    @Override
    public String toString() {
        return "OssVO{" +
                "accessid='" + accessid + '\'' +
                ", policy='" + policy + '\'' +
                ", signature='" + signature + '\'' +
                ", dir='" + dir + '\'' +
                ", host='" + host + '\'' +
                ", expire='" + expire + '\'' +
                ", ossList='" + ossList + '\'' +
                '}';
    }
}
